<?php
/**
 * Created by PhpStorm.
 * User: gxk
 * Date: 2019/4/24
 * Time: 22:27
 */

namespace Library;
use Resque;
class Queue
{
    public function __construct ()
    {
        date_default_timezone_set('Asia/Shanghai');
        //获取队列执行状态
//        $status = new Resque_Job_Status($jobId);
//        echo $status->get();
        //删除default任务\Library\ResqueJob类
//        Resque::dequeue('default', ['\Library\ResqueJob']);
        //删除default任务,\Library\ResqueJob类的087df5819a790ac666c9608e2234b21e队列
//        Resque::dequeue('default', ['\Library\ResqueJob' => '087df5819a790ac666c9608e2234b21e']);
        //删除default任务\Library\ResqueJob类带array('foo' => 1, 'bar' => 2)参数的队列
//        Resque::dequeue('default', ['\Library\ResqueJob' => array('foo' => 1, 'bar' => 2)]);
        //删除default任务下多个类任务
//        Resque::dequeue('default', ['\Library\ResqueJob', '\Library\ResqueJob1']);
        //删除default任务所有队列
//        Resque::dequeue('default');
    }
    /*
     * 添加任务到队列
     * @param array $args 任务参数
     * @param string $queueName 队列名称,默认default
     * @param string $class 类名,默认\Library\ResqueJob
     * @param bool $detail 是否展示详细信息,默认true开启
     * return false或者任务id
     */
    public static function add($args=[],$queueName='default',$class='\Library\ResqueJob',$detail=true)
    {
        Resque::setBackend(C('settings','redis','host').':'.C('settings','redis','port'));
        $jobId = Resque::enqueue($queueName, $class, $args, $detail);
        return $jobId;
    }
}